/**
 * Tencent is pleased to support the open source community by making Tseer available.
 *
 * Copyright (C) 2018 THL A29 Limited, a Tencent company. All rights reserved.
 * 
 * Licensed under the BSD 3-Clause License (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 * 
 * https://opensource.org/licenses/BSD-3-Clause
 *
 * Unless required by applicable law or agreed to in writing, software distributed 
 * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 */

// **********************************************************************
// This file was generated by a TARS parser!
// TARS version 1.0.1.
// **********************************************************************

package com.qq.cloud.router.client.share.tseer;

import com.qq.tars.protocol.annotation.*;
import com.qq.tars.protocol.tars.annotation.*;
import com.qq.tars.common.support.Holder;

@Servant
public interface RouterPrx {
	/**
	 * 获取某服务的SET、IDC、ALL节点；成功返回0，失败返回-1
	 */
	public int getRouterNode(AgentRouterRequest req, @TarsHolder Holder<AgentRouterResponse> rsp);
	/**
	 * 获取某服务的SET、IDC、ALL节点；成功返回0，失败返回-1
	 */
	public int getRouterNode(AgentRouterRequest req, @TarsHolder Holder<AgentRouterResponse> rsp, @TarsContext java.util.Map<String, String> ctx);
	/**
	 * 获取某服务的SET、IDC、ALL节点；成功返回0，失败返回-1
	 */
	public void async_getRouterNode(@TarsCallback RouterPrxCallback callback, AgentRouterRequest req);
	/**
	 * 获取某服务的SET、IDC、ALL节点；成功返回0，失败返回-1
	 */
	public void async_getRouterNode(@TarsCallback RouterPrxCallback callback, AgentRouterRequest req, @TarsContext java.util.Map<String, String> ctx);
	/**
	 * 模调数据上报；成功返回0，失败返回-1
	 */
	public int reportStat(NodeStat stat);
	/**
	 * 模调数据上报；成功返回0，失败返回-1
	 */
	public int reportStat(NodeStat stat, @TarsContext java.util.Map<String, String> ctx);
	/**
	 * 模调数据上报；成功返回0，失败返回-1
	 */
	public void async_reportStat(@TarsCallback RouterPrxCallback callback, NodeStat stat);
	/**
	 * 模调数据上报；成功返回0，失败返回-1
	 */
	public void async_reportStat(@TarsCallback RouterPrxCallback callback, NodeStat stat, @TarsContext java.util.Map<String, String> ctx);
}
